跳到主要内容

CSS 过渡

阐述

CSS 过渡 transition 是指在一定的时间跨度内(而不是突然)完成某种 CSS 变换CSS 透明度的变化。针对不同的变化可以设置不同的时间。

定时函数

定时函数 transition-timing-function 定义了时间和变化进度的关系。

  • 线性定时函数 linear:时间和进度呈线性关系,很少使用
  • 渐慢 ease-out:先快后慢,主要用于元素从画外出现
  • 渐快 ease-in:先慢后快,主要用于元素消失到画外
  • 对称渐快渐慢 ease-in-out:对称的先慢再快后慢
  • 不对称渐快渐慢 ease:默认值,渐快的部分快一些,渐慢的部分慢一些
  • 自定义:使用 cubic-bezier(a, b, c, d):在 (0, 0)(1, 1) 之间定义两个 Bezier 控制点

延迟

可以让改变延迟一些发生,方法是在新状态的 CSS 中加入 transition-delay

实例

.dropdown {
opacity: 0;
transition: opacity 400ms;
transition-delay: 300ms;
}

.dropdown-wrapper:hover .dropdown {
opacity: 1;
transition: opacity 100ms;
transition-delay: 0ms;
}

性质

相关内容

参考文献